﻿using System;
using System.Collections.Generic;
using System.Text;

namespace IOP.Pulsar.Abstractions
{
    /// <summary>
    /// 服务器构建接口
    /// </summary>
    public interface IServerBuilder
    {
        /// <summary>
        /// 服务器服务项
        /// </summary>
        IServiceProvider ServerServices { get; set; }
        /// <summary>
        /// 构建管线
        /// </summary>
        /// <typeparam name="TContext"></typeparam>
        /// <param name="builder"></param>
        void BuildPipeline<TContext>(Action<IProductLineBuilder<TContext>> builder) where TContext : class;
    }
}
